﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DTO;
using BUS;

namespace QuanLyCongDoanVien
{
    public partial class frmMain : Form
    {
       
        UserControl userControl;
      
        
        public frmMain()
        {
            InitializeComponent();
            GlobalClass.DaDangNhap = false;
            userControl = null;           
        }

        #region Xu ly cho tab "Hệ thống"

        private void btnDangNhap_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                // MessageBox.Show("Bạn đã đăng nhập!","Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
                DialogResult dlgResult;
                dlgResult = MessageBox.Show("Bạn thật sự muốn đăng xuất khỏi hệ thống?", "Canh bao", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dlgResult == DialogResult.Yes)
                {
                    GlobalClass.DaDangNhap = false;
                    userControl = new UserControls.ucDangNhapHeThong();
                    userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
                    pnlHeThong.Controls.Clear();
                    pnlHeThong.Controls.Add(userControl);
                }
            }
            else
            {
                if ((userControl != null) && (userControl.Name != "ucDangNhapHeThong"))
                {
                    userControl.Dispose();
                }
                userControl = new UserControls.ucDangNhapHeThong();
                userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
                userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
                pnlHeThong.Controls.Clear();
                pnlHeThong.Controls.Add(userControl);
            }
        }

        private void btnSuaTaiKhoan_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucSuaTaiKhoan"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucSuaTaiKhoan();
                    userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
                    pnlHeThong.Controls.Clear();
                    pnlHeThong.Controls.Add(userControl);
                }
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnDangXuat_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                DialogResult dlgResult;
                dlgResult = MessageBox.Show("Bạn thật sự muốn đăng xuất khỏi hệ thống?", "Canh bao", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (dlgResult == DialogResult.Yes)
                {
                    GlobalClass.DaDangNhap = false;
                    userControl = new UserControls.ucDangNhapHeThong();
                    userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
                    pnlHeThong.Controls.Clear();
                    pnlHeThong.Controls.Add(userControl);
                }
            }
            else
            {
                MessageBox.Show("Bạn chưa đăng nhập!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
                
            }
        }

        private void btnThemTaiKhoan_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if (GlobalClass.NguoiDung.LaNguoiQuanLy == false)
                {
                    MessageBox.Show("Chỉ có người quản lý hệ thống mới được quyền thêm tài khoản");
                    return;
                }

                if ((userControl != null) && (userControl.Name != "ucThemTaiKhoan"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucThemTaiKhoan();
                    userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
                    pnlHeThong.Controls.Clear();
                    pnlHeThong.Controls.Add(userControl);
                }
                
                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnHuyTaiKhoan_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if (GlobalClass.NguoiDung.LaNguoiQuanLy == false)
                {
                    MessageBox.Show("Chỉ có người quản lý hệ thống mới được quyền hủy tài khoản");
                    return;
                }

                if ((userControl != null) && (userControl.Name != "ucHuyTaiKhoan"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucHuyTaiKhoan();
                    userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
                    pnlHeThong.Controls.Clear();
                    pnlHeThong.Controls.Add(userControl);
                }

                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            DialogResult result;
            result = MessageBox.Show("Bạn thật sự muốn thoát?", "Canh bao", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
            if (result == DialogResult.Yes)
            {
                this.Close();
            }
        }

        #endregion


        #region Xu ly cho tab "Công Đoàn viên"

        private void btnThemCDV_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucThemCongDoanVien"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucThemCongDoanVien();
                    userControl.Left = (int)(pnlCongDoanVien.Location.X + pnlCongDoanVien.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlCongDoanVien.Location.Y + pnlCongDoanVien.Height - userControl.Height) / 2;
                    pnlCongDoanVien.Controls.Clear();
                    pnlCongDoanVien.Controls.Add(userControl);
                }

                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

       

        private void btnSuaThongTinCDV_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucCapNhatThongTinCDV"))
                {
                    userControl.Dispose();

                    userControl = new UserControls.ucCapNhatThongTinCDV();
                    userControl.Dock = DockStyle.Fill;
                    pnlCongDoanVien.Controls.Clear();
                    pnlCongDoanVien.Controls.Add(userControl);
                }

            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnXoaCDV_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucXoaCongDoanVien"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucXoaCongDoanVien();
                    userControl.Left = (int)(pnlCongDoanVien.Location.X + pnlCongDoanVien.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlCongDoanVien.Location.Y + pnlCongDoanVien.Height - userControl.Height) / 2;
                    pnlCongDoanVien.Controls.Clear();
                    pnlCongDoanVien.Controls.Add(userControl);
                }
                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnTimKiemCDV_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucTimKiemCDV"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucTimKiemCDV();
                    userControl.Left = (int)(pnlCongDoanVien.Location.X + pnlCongDoanVien.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlCongDoanVien.Location.Y + pnlCongDoanVien.Height - userControl.Height) / 2;
                    pnlCongDoanVien.Controls.Clear();
                    pnlCongDoanVien.Controls.Add(userControl);
                }

                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnThongKeCDV_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucThongKeCDV"))
                {
                    userControl.Dispose();

                    userControl = new UserControls.ucThongKeCDV();
                    userControl.Left = (int)(pnlCongDoanVien.Location.X + pnlCongDoanVien.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlCongDoanVien.Location.Y + pnlCongDoanVien.Height - userControl.Height) / 2;
                    pnlCongDoanVien.Controls.Clear();
                    pnlCongDoanVien.Controls.Add(userControl);
                }

            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        #endregion

        #region Xu ly cho tab "Tổ Công đoàn"

        private void btnThemTCD_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucThemToCongDoan"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucThemToCongDoan();
                    userControl.Left = (int)(pnlToCongDoan.Location.X + pnlToCongDoan.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlToCongDoan.Location.Y + pnlToCongDoan.Height - userControl.Height) / 2;
                    pnlToCongDoan.Controls.Clear();
                    pnlToCongDoan.Controls.Add(userControl);
                }

                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnSuaThongTinTCD_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucCapNhatToCongDoan"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucCapNhatToCongDoan();
                    userControl.Left = (int)(pnlToCongDoan.Location.X + pnlToCongDoan.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlToCongDoan.Location.Y + pnlToCongDoan.Height - userControl.Height) / 2;
                    pnlToCongDoan.Controls.Clear();
                    pnlToCongDoan.Controls.Add(userControl);
                }
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        private void btnXoaTCD_Click(object sender, EventArgs e)
        {
            if (GlobalClass.DaDangNhap)
            {
                if ((userControl != null) && (userControl.Name != "ucXoaToCongDoan"))
                {
                    userControl.Dispose();
                    userControl = new UserControls.ucXoaToCongDoan();
                    userControl.Left = (int)(pnlToCongDoan.Location.X + pnlToCongDoan.Width - userControl.Width) / 2;
                    userControl.Top = (int)(pnlToCongDoan.Location.Y + pnlToCongDoan.Height - userControl.Height) / 2;
                    pnlToCongDoan.Controls.Clear();
                    pnlToCongDoan.Controls.Add(userControl);
                }

                
            }
            else
            {
                MessageBox.Show("Hãy đăng nhập để sử dụng hệ thống!", "Thong bao", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

        #endregion

        #region Xu ly cho form main

        private void frmMain_Load(object sender, EventArgs e)
        {
            userControl = new UserControls.ucDangNhapHeThong();
            userControl.Left = (int)(pnlHeThong.Location.X + pnlHeThong.Width - userControl.Width) / 2;
            userControl.Top = (int)(pnlHeThong.Location.Y + pnlHeThong.Height - userControl.Height) / 2;
            pnlHeThong.Controls.Clear();
            pnlHeThong.Controls.Add(userControl);
        }

        
        private void tvIndex_AfterSelect(object sender, TreeViewEventArgs e)
        {
            if (e.Node.Name == "tvNodeDangNhap")
            {
                try
                {
                    string str = Application.StartupPath;
                    str += @"\Help\DangNhapHeThong.html";
                    hlpBrowser.Url = new System.Uri(str);
                }
                catch ( Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }

            }
        }

        private void tabCtrlQuanLy_SelectedIndexChanged(object sender, EventArgs e)
        {
            //Xu ly load len man hinh cac cho cac su kien doi qua tab moi
        }

        #endregion

        
        
       
    }
}
